﻿<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>1.为什么要用NFinal</title>
</head>
<body>
    <h3>为什么要用NFinal?</h3>
    <p>
        1.完全自由的插件式开发，仅需复制插件到插件目录中即可添加功能（后期插件维护非常方便）。<br/>
        2.本框架使用泛型中间件,即框架可移植性强，.net 4.0+，.net standard 1.5+均可使用。<br />
        3.提供了一系列Visual Studio插件功能，例如自动生成数据库实体，Razor视图实体，json对应的Class类等。<br />
        4.提供了依赖注入功能，序列化，缓存等基础功能可通过ServiceCollection注册更改。<br />
        5.提供了强大的泛型过滤器，IParameterFilter,IAuthorizationFilter，IActionFilter，IResponseFilter等.<br />
        6.提供了泛型控制器功能，如果你对IL非常熟悉，可扩展出仅需一行代码实现增删改查等强大功能的控制器。<br />
        7.提供了Razor模板自动转C#模板代码功能，令Razor模板可移植到任意框架下。<br />
        8.经过了项目实战开发，bug基本修正完，不影响使用。
        总之从实用性上来说，框架更小，更快，更易调试，功能也更强大。<br />
        <span style="color:red;">
            声明：此框架与JFinal无任何关系，完全是另一套编程模式，仅是名称相似。
        </span>
    </p>
</body>
</html>